require "Solucao"

class SolucaoFactory
	attr_accessor :tamanho_populacao, :limite_inferior, :limite_superior

	def initialize tamanho_populacao, limite_inferior, limite_superior
		@tamanho_populacao = tamanho_populacao
		@limite_inferior = limite_inferior
		@limite_superior = limite_superior
	end
	
	def gerar_populacao
		@populacao = []
		@tamanho_populacao.times do 
			valor = @limite_inferior + ((rand * (@limite_superior - @limite_inferior)).truncate)
			@populacao << (Solucao.new(valor, @limite_inferior, @limite_superior))
		end
		return @populacao
	end

end
